package com.quickpass.order;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.redisson.Redisson;
import org.redisson.api.RBloomFilter;
import org.redisson.api.RedissonClient;
import org.redisson.config.Config;
import org.redisson.config.SingleServerConfig;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import java.util.ArrayList;
import java.util.List;

/**
 * @description:
 * @author: 弔人
 * @time: 2023/2/7 23:23
 */
@SpringBootTest
@RunWith(SpringRunner.class)
public class test {

//    @Test
//    public void patchingConsum(ConsumPatchingVO vo) throws ParseException {
//        Config config = new Config();
//        SingleServerConfig singleServerConfig = config.useSingleServer();
//        singleServerConfig.setAddress("redis://127.0.0.1:6379");
//        singleServerConfig.setPassword("123456");
//        RedissonClient redissonClient = Redisson.create(config);
//        RBloomFilter<String> bloom = redissonClient.getBloomFilter("name");
//        // 初始化布隆过滤器；  大小:100000，误判率:0.01
//        bloom.tryInit(100000L, 0.01);
//        // 新增10万条数据
//        for(int i=0;i<100000;i++) {
//            bloom.add("name" + i);
//        }
//        // 判断不存在于布隆过滤器中的元素
//        List<String> notExistList = new ArrayList<>();
//        for(int i=0;i<100000;i++) {
//            String str = "name" + i;
//            boolean notExist = bloom.contains(str);
//            if (notExist) {
//                notExistList.add(str);
//            }
//        }
//        if ($.isNotEmpty(notExistList) && notExistList.size() > 0 ) {
//            System.out.println("误判次数:"+notExistList.size());
//        }

//    }

}
